package org.logMonitor.dao;

import org.apache.ibatis.annotations.Param;
import org.logMonitor.entity.Record;

import java.util.List;

/**
 * Created by lenovo on 2018/1/14.
 */
public interface RecordDao {
    /**
     * 添加record
     * @param record
     * @return
     */
    int addRecord(Record record);

    /**
     * 根据id得到record
     * @param id
     * @return
     */
    Record getRecordById(int id);

    /**
     * 根据ruleI，dsrc_ip，dst_ip获得record集合，用于展示源头到目的的value折线图
     * @param ruleId
     * @param src_ip
     * @param dst_ip
     * @return 按照时间升序输出
     */
    List<Record> getRecordByIdSrcipDstip(@Param("ruleId") int ruleId, @Param("src_ip")String src_ip,@Param("dst_ip") String dst_ip);

    /**
     * 根据ruleI，src_ip获得record集合，用于展示源头到目的的value折线图
     * @param ruleId
     * @param src_ip
     * @return
     */
    List<Record> getRecordByIdSrcip(@Param("ruleId") int ruleId, @Param("src_ip")String src_ip,@Param("offset") int offset,@Param("limit") int limit);

    /**
     * 根据ruleI，dst_ip获得record集合，用于展示源头到目的的value折线图
     * @param ruleId
     * @param dst_ip
     * @return
     */
    List<Record> getRecordByIdDstip(@Param("ruleId") int ruleId, @Param("dst_ip") String dst_ip,@Param("offset") int offset,@Param("limit") int limit);
}
